home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / u_man / cat1 / X11 / X.z / X
Encoding:
Text File  |  2002-10-03  |  67.3 KB  |  1,387 lines

  1.  
  2.  
  3.  
  4.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.           X - a portable, network-transparent window system
  10.  
  11.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.           The X Window System is a network transparent window system
  13.           which runs on a wide range of computing and graphics
  14.           machines.  It should be relatively straightforward to build
  15.           the X Window System software distribution on most ANSI C and
  16.           POSIX compliant systems.  Commercial implementations are
  17.           also available for a wide range of platforms.
  18.  
  19.           The Open Group requests that the following names be used
  20.           when referring to this software:
  21.  
  22.                                        X
  23.                                 X Window System
  24.                                   X Version 11
  25.                           X Window System, Version 11
  26.                                       X11
  27.  
  28.           _X _W_i_n_d_o_w _S_y_s_t_e_m is a trademark of The Open Group.
  29.  
  30.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  31.           X Window System servers run on computers with bitmap
  32.           displays.  The server distributes user input to and accepts
  33.           output requests from various client programs through a
  34.           variety of different interprocess communication channels.
  35.           Although the most common case is for the client programs to
  36.           be running on the same machine as the server, clients can be
  37.           run transparently from other machines (including machines
  38.           with different architectures and operating systems) as well.
  39.  
  40.           X supports overlapping hierarchical subwindows and text and
  41.           graphics operations, on both monochrome and color displays.
  42.           For a full explanation of the functions that are available,
  43.           see the _X_l_i_b - _C _L_a_n_g_u_a_g_e _X _I_n_t_e_r_f_a_c_e manual, the _X _W_i_n_d_o_w
  44.           _S_y_s_t_e_m _P_r_o_t_o_c_o_l specification, the _X _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s - _C
  45.           _L_a_n_g_u_a_g_e _I_n_t_e_r_f_a_c_e manual, and various toolkit documents.
  46.  
  47.           The number of programs that use _X is quite large.  Programs
  48.           provided in the core X Window System distribution include:
  49.           a terminal emulator, _x_t_e_r_m; a window manager, _t_w_m; a display
  50.           manager, _x_d_m; a console redirect program, _x_c_o_n_s_o_l_e; a mail
  51.           interface, _x_m_h; a bitmap editor, _b_i_t_m_a_p; resource
  52.           listing/manipulation tools, _a_p_p_r_e_s, _e_d_i_t_r_e_s; access control
  53.           programs, _x_a_u_t_h, _x_h_o_s_t, and _i_c_e_a_u_t_h; user preference setting
  54.           programs, _x_r_d_b, _x_c_m_s_d_b, _x_s_e_t, _x_s_e_t_r_o_o_t, _x_s_t_d_c_m_a_p, and
  55.           _x_m_o_d_m_a_p; clocks, _x_c_l_o_c_k and _o_c_l_o_c_k; a font displayer, (_x_f_d;
  56.           utilities for listing information about fonts, windows, and
  57.           displays, _x_l_s_f_o_n_t_s, _x_w_i_n_i_n_f_o, _x_l_s_c_l_i_e_n_t_s, _x_d_p_y_i_n_f_o,
  58.           _x_l_s_a_t_o_m_s, and _x_p_r_o_p; screen image manipulation utilities,
  59.           _x_w_d, _x_w_u_d, and _x_m_a_g; a performance measurement utility,
  60.  
  61.  
  62.  
  63.      Page 1                                          (printed 10/3/02)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  71.  
  72.  
  73.  
  74.           _x_1_1_p_e_r_f; a font compiler, _b_d_f_t_o_p_c_f; a font server and
  75.           related utilities, _x_f_s, _f_s_i_n_f_o, _f_s_l_s_f_o_n_t_s, _f_s_t_o_b_d_f; an X
  76.           Image Extension exerciser, _x_i_e_p_e_r_f; a display server and
  77.           related utilities, _X_s_e_r_v_e_r, _r_g_b, _m_k_f_o_n_t_d_i_r; remote execution
  78.           utilities, _r_s_t_a_r_t and _x_o_n; a clipboard manager, _x_c_l_i_p_b_o_a_r_d;
  79.           keyboard description compiler and related utilities,
  80.           _x_k_b_c_o_m_p, _x_k_b_p_r_i_n_t, _x_k_b_b_e_l_l, _x_k_b_e_v_d, _x_k_b_v_l_e_d_s, and _x_k_b_w_a_t_c_h;
  81.           a utility to terminate clients, _x_k_i_l_l; an optimized X
  82.           protocol proxy, _l_b_x_p_r_o_x_y; a firewall security proxy, _x_f_w_p; a
  83.           proxy manager to control them, _p_r_o_x_y_m_n_g_r; a utility to find
  84.           proxies, _x_f_i_n_d_p_r_o_x_y; Netscape Navigator Plug-ins, _l_i_b_x_r_x._s_o
  85.           and _l_i_b_x_r_x_n_e_s_t._s_o; an RX MIME-type helper program, _x_r_x; and
  86.           a utility to cause part or all of the screen to be redrawn,
  87.           _x_r_e_f_r_e_s_h.
  88.  
  89.           Many other utilities, window managers, games, toolkits, etc.
  90.           are included as user-contributed software in the X Window
  91.           System distribution, or are available using anonymous ftp on
  92.           the Internet.  See your site administrator for details.
  93.  
  94.      SSSSTTTTAAAARRRRTTTTIIIINNNNGGGG UUUUPPPP
  95.           There are two main ways of getting the X server and an
  96.           initial set of client applications started.  The particular
  97.           method used depends on what operating system you are running
  98.           and whether or not you use other window systems in addition
  99.           to X.
  100.  
  101.           _x_d_m ((((tttthhhheeee XXXX DDDDiiiissssppppllllaaaayyyy MMMMaaaannnnaaaaggggeeeerrrr))))
  102.                   If you want to always have X running on your
  103.                   display, your site administrator can set your
  104.                   machine up to use the X Display Manager _x_d_m.  This
  105.                   program is typically started by the system at boot
  106.                   time and takes care of keeping the server running
  107.                   and getting users logged in.  If you are running
  108.                   _x_d_m, you will see a window on the screen welcoming
  109.                   you to the system and asking for your username and
  110.                   password.  Simply type them in as you would at a
  111.                   normal terminal, pressing the Return key after each.
  112.                   If you make a mistake, _x_d_m will display an error
  113.                   message and ask you to try again.  After you have
  114.                   successfully logged in, _x_d_m will start up your X
  115.                   environment.  By default, if you have an executable
  116.                   file named ._x_s_e_s_s_i_o_n in your home directory, _x_d_m
  117.                   will treat it as a program (or shell script) to run
  118.                   to start up your initial clients (such as terminal
  119.                   emulators, clocks, a window manager, user settings
  120.                   for things like the background, the speed of the
  121.                   pointer, etc.).  Your site administrator can provide
  122.                   details.
  123.  
  124.           _x_i_n_i_t ((((rrrruuuunnnn mmmmaaaannnnuuuuaaaallllllllyyyy ffffrrrroooommmm tttthhhheeee sssshhhheeeellllllll))))
  125.                   Sites that support more than one window system might
  126.  
  127.  
  128.  
  129.      Page 2                                          (printed 10/3/02)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  137.  
  138.  
  139.  
  140.                   choose to use the _x_i_n_i_t program for starting X
  141.                   manually.  If this is true for your machine, your
  142.                   site administrator will probably have provided a
  143.                   program named "x11", "startx", or "xstart" that will
  144.                   do site-specific initialization (such as loading
  145.                   convenient default resources, running a window
  146.                   manager, displaying a clock, and starting several
  147.                   terminal emulators) in a nice way.  If not, you can
  148.                   build such a script using the _x_i_n_i_t program.  This
  149.                   utility simply runs one user-specified program to
  150.                   start the server, runs another to start up any
  151.                   desired clients, and then waits for either to
  152.                   finish.  Since either or both of the user-specified
  153.                   programs may be a shell script, this gives
  154.                   substantial flexibility at the expense of a nice
  155.                   interface.  For this reason, _x_i_n_i_t is not intended
  156.                   for end users.
  157.  
  158.      DDDDIIIISSSSPPPPLLLLAAAAYYYY NNNNAAAAMMMMEEEESSSS
  159.           From the user's perspective, every X server has a _d_i_s_p_l_a_y
  160.           _n_a_m_e of the form:
  161.  
  162.                       _h_o_s_t_n_a_m_e:_d_i_s_p_l_a_y_n_u_m_b_e_r._s_c_r_e_e_n_n_u_m_b_e_r
  163.  
  164.           This information is used by the application to determine how
  165.           it should connect to the server and which screen it should
  166.           use by default (on displays with multiple monitors):
  167.  
  168.           _h_o_s_t_n_a_m_e
  169.                   The _h_o_s_t_n_a_m_e specifies the name of the machine to
  170.                   which the display is physically connected.  If the
  171.                   hostname is not given, the most efficient way of
  172.                   communicating to a server on the same machine will
  173.                   be used.
  174.  
  175.           _d_i_s_p_l_a_y_n_u_m_b_e_r
  176.                   The phrase "display" is usually used to refer to
  177.                   collection of monitors that share a common keyboard
  178.                   and pointer (mouse, tablet, etc.).  Most
  179.                   workstations tend to only have one keyboard, and
  180.                   therefore, only one display.  Larger, multi-user
  181.                   systems, however, frequently have several displays
  182.                   so that more than one person can be doing graphics
  183.                   work at once.  To avoid confusion, each display on a
  184.                   machine is assigned a _d_i_s_p_l_a_y _n_u_m_b_e_r (beginning at
  185.                   0) when the X server for that display is started.
  186.                   The display number must always be given in a display
  187.                   name.
  188.  
  189.           _s_c_r_e_e_n_n_u_m_b_e_r
  190.                   Some displays share a single keyboard and pointer
  191.                   among two or more monitors.  Since each monitor has
  192.  
  193.  
  194.  
  195.      Page 3                                          (printed 10/3/02)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  203.  
  204.  
  205.  
  206.                   its own set of windows, each screen is assigned a
  207.                   _s_c_r_e_e_n _n_u_m_b_e_r (beginning at 0) when the X server for
  208.                   that display is started.  If the screen number is
  209.                   not given, screen 0 will be used.
  210.  
  211.           On POSIX systems, the default display name is stored in your
  212.           DISPLAY environment variable.  This variable is set
  213.           automatically by the _x_t_e_r_m terminal emulator.  However, when
  214.           you log into another machine on a network, you will need to
  215.           set DISPLAY by hand to point to your display.  For example,
  216.  
  217.               % setenv DISPLAY myws:0
  218.               $ DISPLAY=myws:0; export DISPLAY
  219.           The _x_o_n script can be used to start an X program on a remote
  220.           machine; it automatically sets the DISPLAY variable
  221.           correctly.
  222.  
  223.           Finally, most X programs accept a command line option of
  224.           ----ddddiiiissssppppllllaaaayyyy _d_i_s_p_l_a_y_n_a_m_e to temporarily override the contents of
  225.           DISPLAY.  This is most commonly used to pop windows on
  226.           another person's screen or as part of a "remote shell"
  227.           command to start an xterm pointing back to your display.
  228.           For example,
  229.  
  230.               % xeyes -display joesws:0 -geometry 1000x1000+0+0
  231.               % rsh big xterm -display myws:0 -ls </dev/null &
  232.  
  233.           X servers listen for connections on a variety of different
  234.           communications channels (network byte streams, shared
  235.           memory, etc.).  Since there can be more than one way of
  236.           contacting a given server, The _h_o_s_t_n_a_m_e part of the display
  237.           name is used to determine the type of channel (also called a
  238.           transport layer) to be used.  X servers generally support
  239.           the following types of connections:
  240.  
  241.           _l_o_c_a_l
  242.                   The hostname part of the display name should be the
  243.                   empty string.  For example:  :_0, :_1, and :_0._1.  The
  244.                   most efficient local transport will be chosen.
  245.  
  246.           _T_C_P/_I_P
  247.                   The hostname part of the display name should be the
  248.                   server machine's IP address name.  Full Internet
  249.                   names, abbreviated names, and IP addresses are all
  250.                   allowed.  For example:  _x._o_r_g:_0, _e_x_p_o:_0,
  251.                   _1_9_8._1_1_2._4_5._1_1:_0, _b_i_g_m_a_c_h_i_n_e:_1, and _h_y_d_r_a:_0._1.
  252.  
  253.           _D_E_C_n_e_t
  254.                   The hostname part of the display name should be the
  255.                   server machine's nodename, followed by two colons
  256.                   instead of one.  For example:  _m_y_w_s::_0, _b_i_g::_1, and
  257.                   _h_y_d_r_a::_0._1.
  258.  
  259.  
  260.  
  261.      Page 4                                          (printed 10/3/02)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  269.  
  270.  
  271.  
  272.      AAAACCCCCCCCEEEESSSSSSSS CCCCOOOONNNNTTTTRRRROOOOLLLL
  273.           An X server can use several types of access control.
  274.           Mechanisms provided in Release 6 are:
  275.               Host Access                   Simple host-based access control.
  276.               MIT-MAGIC-COOKIE-1            Shared plain-text "cookies".
  277.               XDM-AUTHORIZATION-1           Secure DES based private-keys.
  278.               SUN-DES-1                     Based on Sun's secure rpc system.
  279.               MIT-KERBEROS-5                Kerberos Version 5 user-to-user.
  280.  
  281.           _X_d_m initializes access control for the server and also
  282.           places authorization information in a file accessible to the
  283.           user.  Normally, the list of hosts from which connections
  284.           are always accepted should be empty, so that only clients
  285.           with are explicitly authorized can connect to the display.
  286.           When you add entries to the host list (with _x_h_o_s_t), the
  287.           server no longer performs any authorization on connections
  288.           from those machines.  Be careful with this.
  289.  
  290.           The file from which _X_l_i_b extracts authorization data can be
  291.           specified with the environment variable XXXXAAAAUUUUTTTTHHHHOOOORRRRIIIITTTTYYYY, and
  292.           defaults to the file ....XXXXaaaauuuutttthhhhoooorrrriiiittttyyyy in the home directory.  _X_d_m
  293.           uses $$$$HHHHOOOOMMMMEEEE////....XXXXaaaauuuutttthhhhoooorrrriiiittttyyyy and will create it or merge in
  294.           authorization records if it already exists when a user logs
  295.           in.
  296.  
  297.           If you use several machines and share a common home
  298.           directory across all of the machines by means of a network
  299.           file system, you never really have to worry about
  300.           authorization files, the system should work correctly by
  301.           default.  Otherwise, as the authorization files are
  302.           machine-independent, you can simply copy the files to share
  303.           them.  To manage authorization files, use _x_a_u_t_h.  This
  304.           program allows you to extract records and insert them into
  305.           other files.  Using this, you can send authorization to
  306.           remote machines when you login, if the remote machine does
  307.           not share a common home directory with your local machine.
  308.           Note that authorization information transmitted ``in the
  309.           clear'' through a network file system or using _f_t_p or _r_c_p
  310.           can be ``stolen'' by a network eavesdropper, and as such may
  311.           enable unauthorized access.  In many environments, this
  312.           level of security is not a concern, but if it is, you need
  313.           to know the exact semantics of the particular authorization
  314.           data to know if this is actually a problem.
  315.  
  316.           For more information on access control, see the _X_s_e_c_u_r_i_t_y
  317.           manual page.
  318.  
  319.      GGGGEEEEOOOOMMMMEEEETTTTRRRRYYYY SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNNSSSS
  320.           One of the advantages of using window systems instead of
  321.           hardwired terminals is that applications don't have to be
  322.           restricted to a particular size or location on the screen.
  323.           Although the layout of windows on a display is controlled by
  324.  
  325.  
  326.  
  327.      Page 5                                          (printed 10/3/02)
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  335.  
  336.  
  337.  
  338.           the window manager that the user is running (described
  339.           below), most X programs accept a command line argument of
  340.           the form ----ggggeeeeoooommmmeeeettttrrrryyyy _W_I_D_T_H_x_H_E_I_G_H_T+_X_O_F_F+_Y_O_F_F (where _W_I_D_T_H,
  341.           _H_E_I_G_H_T, _X_O_F_F, and _Y_O_F_F are numbers) for specifying a
  342.           preferred size and location for this application's main
  343.           window.
  344.  
  345.           The _W_I_D_T_H and _H_E_I_G_H_T parts of the geometry specification are
  346.           usually measured in either pixels or characters, depending
  347.           on the application.  The _X_O_F_F and _Y_O_F_F parts are measured in
  348.           pixels and are used to specify the distance of the window
  349.           from the left or right and top and bottom edges of the
  350.           screen, respectively.  Both types of offsets are measured
  351.           from the indicated edge of the screen to the corresponding
  352.           edge of the window.  The X offset may be specified in the
  353.           following ways:
  354.  
  355.           +_X_O_F_F   The left edge of the window is to be placed _X_O_F_F
  356.                   pixels in from the left edge of the screen (i.e.,
  357.                   the X coordinate of the window's origin will be
  358.                   _X_O_F_F).  _X_O_F_F may be negative, in which case the
  359.                   window's left edge will be off the screen.
  360.  
  361.           -_X_O_F_F   The right edge of the window is to be placed _X_O_F_F
  362.                   pixels in from the right edge of the screen.  _X_O_F_F
  363.                   may be negative, in which case the window's right
  364.                   edge will be off the screen.
  365.  
  366.           The Y offset has similar meanings:
  367.  
  368.           +_Y_O_F_F   The top edge of the window is to be _Y_O_F_F pixels
  369.                   below the top edge of the screen (i.e., the Y
  370.                   coordinate of the window's origin will be _Y_O_F_F).
  371.                   _Y_O_F_F may be negative, in which case the window's top
  372.                   edge will be off the screen.
  373.  
  374.           -_Y_O_F_F   The bottom edge of the window is to be _Y_O_F_F pixels
  375.                   above the bottom edge of the screen.  _Y_O_F_F may be
  376.                   negative, in which case the window's bottom edge
  377.                   will be off the screen.
  378.  
  379.           Offsets must be given as pairs; in other words, in order to
  380.           specify either _X_O_F_F or _Y_O_F_F both must be present.  Windows
  381.           can be placed in the four corners of the screen using the
  382.           following specifications:
  383.  
  384.           +_0+_0    upper left hand corner.
  385.  
  386.           -_0+_0    upper right hand corner.
  387.  
  388.           -_0-_0    lower right hand corner.
  389.  
  390.  
  391.  
  392.  
  393.      Page 6                                          (printed 10/3/02)
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  401.  
  402.  
  403.  
  404.           +_0-_0    lower left hand corner.
  405.  
  406.           In the following examples, a terminal emulator is placed in
  407.           roughly the center of the screen and a load average monitor,
  408.           mailbox, and clock are placed in the upper right hand
  409.           corner:
  410.  
  411.               xterm -fn 6x10 -geometry 80x24+30+200 &
  412.               xclock -geometry 48x48-0+0 &
  413.               xload -geometry 48x48-96+0 &
  414.               xbiff -geometry 48x48-48+0 &
  415.  
  416.      WWWWIIIINNNNDDDDOOOOWWWW MMMMAAAANNNNAAAAGGGGEEEERRRRSSSS
  417.           The layout of windows on the screen is controlled by special
  418.           programs called _w_i_n_d_o_w _m_a_n_a_g_e_r_s.  Although many window
  419.           managers will honor geometry specifications as given, others
  420.           may choose to ignore them (requiring the user to explicitly
  421.           draw the window's region on the screen with the pointer, for
  422.           example).
  423.  
  424.           Since window managers are regular (albeit complex) client
  425.           programs, a variety of different user interfaces can be
  426.           built.  The X Window System distribution comes with a window
  427.           manager named _t_w_m which supports overlapping windows, popup
  428.           menus, point-and-click or click-to-type input models, title
  429.           bars, nice icons (and an icon manager for those who don't
  430.           like separate icon windows).
  431.  
  432.           See the user-contributed software in the X Window System
  433.           distribution for other popular window managers.
  434.  
  435.      FFFFOOOONNNNTTTT NNNNAAAAMMMMEEEESSSS
  436.           Collections of characters for displaying text and symbols in
  437.           X are known as _f_o_n_t_s.  A font typically contains images that
  438.           share a common appearance and look nice together (for
  439.           example, a single size, boldness, slant, and character set).
  440.           Similarly, collections of fonts that are based on a common
  441.           type face (the variations are usually called roman, bold,
  442.           italic, bold italic, oblique, and bold oblique) are called
  443.           _f_a_m_i_l_i_e_s.
  444.  
  445.           Fonts come in various sizes.  The X server supports _s_c_a_l_a_b_l_e
  446.           fonts, meaning it is possible to create a font of arbitrary
  447.           size from a single source for the font.  The server supports
  448.           scaling from _o_u_t_l_i_n_e fonts and _b_i_t_m_a_p fonts.  Scaling from
  449.           outline fonts usually produces significantly better results
  450.           than scaling from bitmap fonts.
  451.  
  452.           An X server can obtain fonts from individual files stored in
  453.           directories in the file system, or from one or more font
  454.           servers, or from a mixtures of directories and font servers.
  455.           The list of places the server looks when trying to find a
  456.  
  457.  
  458.  
  459.      Page 7                                          (printed 10/3/02)
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  467.  
  468.  
  469.  
  470.           font is controlled by its _f_o_n_t _p_a_t_h.  Although most
  471.           installations will choose to have the server start up with
  472.           all of the commonly used font directories in the font path,
  473.           the font path can be changed at any time with the _x_s_e_t
  474.           program.  However, it is important to remember that the
  475.           directory names are on the sssseeeerrrrvvvveeeerrrr's machine, not on the
  476.           application's.
  477.  
  478.           Bitmap font files are usually created by compiling a textual
  479.           font description into binary form, using _b_d_f_t_o_p_c_f.  Font
  480.           databases are created by running the _m_k_f_o_n_t_d_i_r program in
  481.           the directory containing the source or compiled versions of
  482.           the fonts.  Whenever fonts are added to a directory,
  483.           _m_k_f_o_n_t_d_i_r should be rerun so that the server can find the
  484.           new fonts.  To make the server reread the font database,
  485.           reset the font path with the _x_s_e_t program.  For example, to
  486.           add a font to a private directory, the following commands
  487.           could be used:
  488.  
  489.               % cp newfont.pcf ~/myfonts
  490.               % mkfontdir ~/myfonts
  491.               % xset fp rehash
  492.  
  493.           The _x_f_o_n_t_s_e_l and _x_l_s_f_o_n_t_s programs can be used to browse
  494.           through the fonts available on a server.  Font names tend to
  495.           be fairly long as they contain all of the information needed
  496.           to uniquely identify individual fonts.  However, the X
  497.           server supports wildcarding of font names, so the full
  498.           specification
  499.  
  500.               -_a_d_o_b_e-_c_o_u_r_i_e_r-_m_e_d_i_u_m-_r-_n_o_r_m_a_l--_1_0-_1_0_0-_7_5-_7_5-_m-_6_0-_i_s_o_8_8_5_9-_1
  501.  
  502.           might be abbreviated as:
  503.  
  504.               -*-_c_o_u_r_i_e_r-_m_e_d_i_u_m-_r-_n_o_r_m_a_l--*-_1_0_0-*-*-*-*-_i_s_o_8_8_5_9-_1
  505.  
  506.           Because the shell also has special meanings for * and ?,
  507.           wildcarded font names should be quoted:
  508.  
  509.               % xlsfonts -fn '-*-courier-medium-r-normal--*-100-*-*-*-*-*-*'
  510.  
  511.           The _x_l_s_f_o_n_t_s program can be used to list all of the fonts
  512.           that match a given pattern.  With no arguments, it lists all
  513.           available fonts.  This will usually list the same font at
  514.           many different sizes.  To see just the base scalable font
  515.           names, try using one of the following patterns:
  516.  
  517.               -*-*-*-*-*-*-_0-_0-_0-_0-*-_0-*-*
  518.               -*-*-*-*-*-*-_0-_0-_7_5-_7_5-*-_0-*-*
  519.               -*-*-*-*-*-*-_0-_0-_1_0_0-_1_0_0-*-_0-*-*
  520.  
  521.           To convert one of the resulting names into a font at a
  522.  
  523.  
  524.  
  525.      Page 8                                          (printed 10/3/02)
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  533.  
  534.  
  535.  
  536.           specific size, replace one of the first two zeros with a
  537.           nonzero value.  The field containing the first zero is for
  538.           the pixel size; replace it with a specific height in pixels
  539.           to name a font at that size.  Alternatively, the field
  540.           containing the second zero is for the point size; replace it
  541.           with a specific size in decipoints (there are 722.7
  542.           decipoints to the inch) to name a font at that size.  The
  543.           last zero is an average width field, measured in tenths of
  544.           pixels; some servers will anamorphically scale if this value
  545.           is specified.
  546.  
  547.      FFFFOOOONNNNTTTT SSSSEEEERRRRVVVVEEEERRRR NNNNAAAAMMMMEEEESSSS
  548.           One of the following forms can be used to name a font server
  549.           that accepts TCP connections:
  550.  
  551.               tcp/_h_o_s_t_n_a_m_e:_p_o_r_t
  552.               tcp/_h_o_s_t_n_a_m_e:_p_o_r_t/_c_a_t_a_l_o_g_u_e_l_i_s_t
  553.  
  554.           The _h_o_s_t_n_a_m_e specifies the name (or decimal numeric address)
  555.           of the machine on which the font server is running.  The
  556.           _p_o_r_t is the decimal TCP port on which the font server is
  557.           listening for connections.  The _c_a_t_a_l_o_g_u_e_l_i_s_t specifies a
  558.           list of catalogue names, with '+' as a separator.
  559.  
  560.           Examples: _t_c_p/_x._o_r_g:_7_1_0_0, _t_c_p/_1_9_8._1_1_2._4_5._1_1:_7_1_0_0/_a_l_l.
  561.  
  562.           One of the following forms can be used to name a font server
  563.           that accepts DECnet connections:
  564.  
  565.               decnet/_n_o_d_e_n_a_m_e::font$_o_b_j_n_a_m_e
  566.               decnet/_n_o_d_e_n_a_m_e::font$_o_b_j_n_a_m_e/_c_a_t_a_l_o_g_u_e_l_i_s_t
  567.  
  568.           The _n_o_d_e_n_a_m_e specifies the name (or decimal numeric address)
  569.           of the machine on which the font server is running.  The
  570.           _o_b_j_n_a_m_e is a normal, case-insensitive DECnet object name.
  571.           The _c_a_t_a_l_o_g_u_e_l_i_s_t specifies a list of catalogue names, with
  572.           '+' as a separator.
  573.  
  574.           Examples: _D_E_C_n_e_t/_S_R_V_N_O_D::_F_O_N_T$_D_E_F_A_U_L_T,
  575.           _d_e_c_n_e_t/_4_4._7_0::_f_o_n_t$_s_p_e_c_i_a_l/_s_y_m_b_o_l_s.
  576.  
  577.      CCCCOOOOLLLLOOOORRRR NNNNAAAAMMMMEEEESSSS
  578.           Most applications provide ways of tailoring (usually through
  579.           resources or command line arguments) the colors of various
  580.           elements in the text and graphics they display.  A color can
  581.           be specified either by an abstract color name, or by a
  582.           numerical color specification.  The numerical specification
  583.           can identify a color in either device-dependent (RGB) or
  584.           device-independent terms.  Color strings are case-
  585.           insensitive.
  586.  
  587.           X supports the use of abstract color names, for example,
  588.  
  589.  
  590.  
  591.      Page 9                                          (printed 10/3/02)
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  599.  
  600.  
  601.  
  602.           "red", "blue".  A value for this abstract name is obtained
  603.           by searching one or more color name databases.  _X_l_i_b first
  604.           searches zero or more client-side databases; the number,
  605.           location, and content of these databases is implementation
  606.           dependent.  If the name is not found, the color is looked up
  607.           in the X server's database.  The text form of this database
  608.           is commonly stored in the file <_X_R_o_o_t>/_l_i_b/_X_1_1/_r_g_b._t_x_t,
  609.           where <XRoot> is replaced by the root of the X11 install
  610.           tree.
  611.  
  612.           A numerical color specification consists of a color space
  613.           name and a set of values in the following syntax:
  614.  
  615.               <_c_o_l_o_r__s_p_a_c_e__n_a_m_e>:<_v_a_l_u_e>/.../<_v_a_l_u_e>
  616.  
  617.           An RGB Device specification is identified by the prefix
  618.           "rgb:" and has the following syntax:
  619.  
  620.               rgb:<_r_e_d>/<_g_r_e_e_n>/<_b_l_u_e>
  621.  
  622.                   <_r_e_d>, <_g_r_e_e_n>, <_b_l_u_e> := _h | _h_h | _h_h_h | _h_h_h_h
  623.                   _h := single hexadecimal digits
  624.           Note that _h indicates the value scaled in 4 bits, _h_h the
  625.           value scaled in 8 bits, _h_h_h the value scaled in 12 bits, and
  626.           _h_h_h_h the value scaled in 16 bits, respectively.  These
  627.           values are passed directly to the X server, and are assumed
  628.           to be gamma corrected.
  629.  
  630.           The eight primary colors can be represented as:
  631.  
  632.               black                rgb:0/0/0
  633.               red                  rgb:ffff/0/0
  634.               green                rgb:0/ffff/0
  635.               blue                 rgb:0/0/ffff
  636.               yellow               rgb:ffff/ffff/0
  637.               magenta              rgb:ffff/0/ffff
  638.               cyan                 rgb:0/ffff/ffff
  639.               white                rgb:ffff/ffff/ffff
  640.  
  641.           For backward compatibility, an older syntax for RGB Device
  642.           is supported, but its continued use is not encouraged.  The
  643.           syntax is an initial sharp sign character followed by a
  644.           numeric specification, in one of the following formats:
  645.  
  646.               #RGB                      (4 bits each)
  647.               #RRGGBB                   (8 bits each)
  648.               #RRRGGGBBB                (12 bits each)
  649.               #RRRRGGGGBBBB             (16 bits each)
  650.  
  651.           The R, G, and B represent single hexadecimal digits.  When
  652.           fewer than 16 bits each are specified, they represent the
  653.           most-significant bits of the value (unlike the "rgb:"
  654.  
  655.  
  656.  
  657.      Page 10                                         (printed 10/3/02)
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  665.  
  666.  
  667.  
  668.           syntax, in which values are scaled).  For example, #3a7 is
  669.           the same as #3000a0007000.
  670.  
  671.           An RGB intensity specification is identified by the prefix
  672.           "rgbi:" and has the following syntax:
  673.  
  674.               rgbi:<_r_e_d>/<_g_r_e_e_n>/<_b_l_u_e>
  675.  
  676.           The red, green, and blue are floating point values between
  677.           0.0 and 1.0, inclusive.  They represent linear intensity
  678.           values, with 1.0 indicating full intensity, 0.5 half
  679.           intensity, and so on.  These values will be gamma corrected
  680.           by _X_l_i_b before being sent to the X server.  The input format
  681.           for these values is an optional sign, a string of numbers
  682.           possibly containing a decimal point, and an optional
  683.           exponent field containing an E or e followed by a possibly
  684.           signed integer string.
  685.  
  686.           The standard device-independent string specifications have
  687.           the following syntax:
  688.  
  689.               CIEXYZ:<_X>/<_Y>/<_Z>             (_n_o_n_e, 1, _n_o_n_e)
  690.               CIEuvY:<_u>/<_v>/<_Y>             (~.6, ~.6, 1)
  691.               CIExyY:<_x>/<_y>/<_Y>             (~.75, ~.85, 1)
  692.               CIELab:<_L>/<_a>/<_b>             (100, _n_o_n_e, _n_o_n_e)
  693.               CIELuv:<_L>/<_u>/<_v>             (100, _n_o_n_e, _n_o_n_e)
  694.               TekHVC:<_H>/<_V>/<_C>             (360, 100, 100)
  695.  
  696.           All of the values (C, H, V, X, Y, Z, a, b, u, v, y, x) are
  697.           floating point values.  Some of the values are constrained
  698.           to be between zero and some upper bound; the upper bounds
  699.           are given in parentheses above.  The syntax for these values
  700.           is an optional '+' or '-' sign, a string of digits possibly
  701.           containing a decimal point, and an optional exponent field
  702.           consisting of an 'E' or 'e' followed by an optional '+' or
  703.           '-' followed by a string of digits.
  704.  
  705.           For more information on device independent color, see the
  706.           _X_l_i_b reference manual.
  707.  
  708.      KKKKEEEEYYYYBBBBOOOOAAAARRRRDDDDSSSS
  709.           The X keyboard model is broken into two layers:  server-
  710.           specific codes (called _k_e_y_c_o_d_e_s) which represent the
  711.           physical keys, and server-independent symbols (called
  712.           _k_e_y_s_y_m_s) which represent the letters or words that appear on
  713.           the keys. Two tables are kept in the server for converting
  714.           keycodes to keysyms:
  715.  
  716.           _m_o_d_i_f_i_e_r _l_i_s_t
  717.                   Some keys (such as Shift, Control, and Caps Lock)
  718.                   are known as _m_o_d_i_f_i_e_r and are used to select
  719.                   different symbols that are attached to a single key
  720.  
  721.  
  722.  
  723.      Page 11                                         (printed 10/3/02)
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  731.  
  732.  
  733.  
  734.                   (such as Shift-a generates a capital A, and
  735.                   Control-l generates a control character ^L).  The
  736.                   server keeps a list of keycodes corresponding to the
  737.                   various modifier keys.  Whenever a key is pressed or
  738.                   released, the server generates an _e_v_e_n_t that
  739.                   contains the keycode of the indicated key as well as
  740.                   a mask that specifies which of the modifier keys are
  741.                   currently pressed.  Most servers set up this list to
  742.                   initially contain the various shift, control, and
  743.                   shift lock keys on the keyboard.
  744.  
  745.           _k_e_y_m_a_p _t_a_b_l_e
  746.                   Applications translate event keycodes and modifier
  747.                   masks into keysyms using a _k_e_y_s_y_m _t_a_b_l_e which
  748.                   contains one row for each keycode and one column for
  749.                   various modifier states.  This table is initialized
  750.                   by the server to correspond to normal typewriter
  751.                   conventions.  The exact semantics of how the table
  752.                   is interpreted to produce keysyms depends on the
  753.                   particular program, libraries, and language input
  754.                   method used, but the following conventions for the
  755.                   first four keysyms in each row are generally adhered
  756.                   to:
  757.  
  758.           The first four elements of the list are split into two
  759.           groups of keysyms.  Group 1 contains the first and second
  760.           keysyms; Group 2 contains the third and fourth keysyms.
  761.           Within each group, if the first element is alphabetic and
  762.           the the second element is the special keysym _N_o_S_y_m_b_o_l, then
  763.           the group is treated as equivalent to a group in which the
  764.           first element is the lowercase letter and the second element
  765.           is the uppercase letter.
  766.  
  767.           Switching between groups is controlled by the keysym named
  768.           MODE SWITCH, by attaching that keysym to some key and
  769.           attaching that key to any one of the modifiers Mod1 through
  770.           Mod5.  This modifier is called the ``group modifier.''
  771.           Group 1 is used when the group modifier is off, and Group 2
  772.           is used when the group modifier is on.
  773.  
  774.           Within a group, the modifier state determines which keysym
  775.           to use.  The first keysym is used when the Shift and Lock
  776.           modifiers are off.  The second keysym is used when the Shift
  777.           modifier is on, when the Lock modifier is on and the second
  778.           keysym is uppercase alphabetic, or when the Lock modifier is
  779.           on and is interpreted as ShiftLock.  Otherwise, when the
  780.           Lock modifier is on and is interpreted as CapsLock, the
  781.           state of the Shift modifier is applied first to select a
  782.           keysym; but if that keysym is lowercase alphabetic, then the
  783.           corresponding uppercase keysym is used instead.
  784.  
  785.      OOOOPPPPTTTTIIIIOOOONNNNSSSS
  786.  
  787.  
  788.  
  789.      PPPPaaaaggggeeee 11112222                                         ((((pppprrrriiiinnnntttteeeedddd 11110000////3333////00002222))))
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  797.  
  798.  
  799.  
  800.           Most X programs attempt to use the same names for command
  801.           line options and arguments.  All applications written with
  802.           the X Toolkit Intrinsics automatically accept the following
  803.           options:
  804.  
  805.           ----ddddiiiissssppppllllaaaayyyy _d_i_s_p_l_a_y
  806.                   This option specifies the name of the X server to
  807.                   use.
  808.  
  809.           ----ggggeeeeoooommmmeeeettttrrrryyyy _g_e_o_m_e_t_r_y
  810.                   This option specifies the initial size and location
  811.                   of the window.
  812.  
  813.           ----bbbbgggg _c_o_l_o_r,,,, ----bbbbaaaacccckkkkggggrrrroooouuuunnnndddd _c_o_l_o_r
  814.                   Either option specifies the color to use for the
  815.                   window background.
  816.  
  817.           ----bbbbdddd _c_o_l_o_r,,,, ----bbbboooorrrrddddeeeerrrrccccoooolllloooorrrr _c_o_l_o_r
  818.                   Either option specifies the color to use for the
  819.                   window border.
  820.  
  821.           ----bbbbwwww _n_u_m_b_e_r,,,, ----bbbboooorrrrddddeeeerrrrwwwwiiiiddddtttthhhh _n_u_m_b_e_r
  822.                   Either option specifies the width in pixels of the
  823.                   window border.
  824.  
  825.           ----ffffgggg _c_o_l_o_r,,,, ----ffffoooorrrreeeeggggrrrroooouuuunnnndddd _c_o_l_o_r
  826.                   Either option specifies the color to use for text or
  827.                   graphics.
  828.  
  829.           ----ffffnnnn _f_o_n_t,,,, ----ffffoooonnnntttt _f_o_n_t
  830.                   Either option specifies the font to use for
  831.                   displaying text.
  832.  
  833.           ----iiiiccccoooonnnniiiicccc
  834.                   This option indicates that the user would prefer
  835.                   that the application's windows initially not be
  836.                   visible as if the windows had be immediately
  837.                   iconified by the user.  Window managers may choose
  838.                   not to honor the application's request.
  839.  
  840.           ----nnnnaaaammmmeeee
  841.                   This option specifies the name under which resources
  842.                   for the application should be found.  This option is
  843.                   useful in shell aliases to distinguish between
  844.                   invocations of an application, without resorting to
  845.                   creating links to alter the executable file name.
  846.  
  847.           ----rrrrvvvv, ----rrrreeeevvvveeeerrrrsssseeee
  848.                   Either option indicates that the program should
  849.                   simulate reverse video if possible, often by
  850.                   swapping the foreground and background colors.  Not
  851.                   all programs honor this or implement it correctly.
  852.  
  853.  
  854.  
  855.      Page 13                                         (printed 10/3/02)
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  863.  
  864.  
  865.  
  866.                   It is usually only used on monochrome displays.
  867.  
  868.           ++++rrrrvvvv
  869.                   This option indicates that the program should not
  870.                   simulate reverse video. This is used to override any
  871.                   defaults since reverse video doesn't always work
  872.                   properly.
  873.  
  874.           ----sssseeeelllleeeeccccttttiiiioooonnnnTTTTiiiimmmmeeeeoooouuuutttt
  875.                   This option specifies the timeout in milliseconds
  876.                   within which two communicating applications must
  877.                   respond to one another for a selection request.
  878.  
  879.           ----ssssyyyynnnncccchhhhrrrroooonnnnoooouuuussss
  880.                   This option indicates that requests to the X server
  881.                   should be sent synchronously, instead of
  882.                   asynchronously.  Since _X_l_i_b normally buffers
  883.                   requests to the server, errors do not necessarily
  884.                   get reported immediately after they occur.  This
  885.                   option turns off the buffering so that the
  886.                   application can be debugged.  It should never be
  887.                   used with a working program.
  888.  
  889.           ----ttttiiiittttlllleeee _s_t_r_i_n_g
  890.                   This option specifies the title to be used for this
  891.                   window.  This information is sometimes used by a
  892.                   window manager to provide some sort of header
  893.                   identifying the window.
  894.  
  895.           ----xxxxnnnnllllllllaaaannnngggguuuuaaaaggggeeee _l_a_n_g_u_a_g_e[__t_e_r_r_i_t_o_r_y][._c_o_d_e_s_e_t]
  896.                   This option specifies the language, territory, and
  897.                   codeset for use in resolving resource and other
  898.                   filenames.
  899.  
  900.           ----xxxxrrrrmmmm _r_e_s_o_u_r_c_e_s_t_r_i_n_g
  901.                   This option specifies a resource name and value to
  902.                   override any defaults.  It is also very useful for
  903.                   setting resources that don't have explicit command
  904.                   line arguments.
  905.  
  906.      RRRREEEESSSSOOOOUUUURRRRCCCCEEEESSSS
  907.           To make the tailoring of applications to personal
  908.           preferences easier, X provides a mechanism for storing
  909.           default values for program resources (e.g. background color,
  910.           window title, etc.)  Resources are specified as strings that
  911.           are read in from various places when an application is run.
  912.           Program components are named in a hierarchical fashion, with
  913.           each node in the hierarchy identified by a class and an
  914.           instance name.  At the top level is the class and instance
  915.           name of the application itself.  By convention, the class
  916.           name of the application is the same as the program name, but
  917.           with  the first letter capitalized (e.g. _B_i_t_m_a_p or _E_m_a_c_s)
  918.  
  919.  
  920.  
  921.      Page 14                                         (printed 10/3/02)
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  929.  
  930.  
  931.  
  932.           although some programs that begin with the letter ``x'' also
  933.           capitalize the second letter for historical reasons.
  934.  
  935.           The precise syntax for resources is:
  936.  
  937.           ResourceLine      = Comment | IncludeFile | ResourceSpec | <empty line>
  938.           Comment           = "!" {<any character except null or newline>}
  939.           IncludeFile       = "#" WhiteSpace "include" WhiteSpace FileName WhiteSpace
  940.           FileName          = <valid filename for operating system>
  941.           ResourceSpec      = WhiteSpace ResourceName WhiteSpace ":" WhiteSpace Value
  942.           ResourceName      = [Binding] {Component Binding} ComponentName
  943.           Binding           = "." | "*"
  944.           WhiteSpace        = {<space> | <horizontal tab>}
  945.           Component         = "?" | ComponentName
  946.           ComponentName     = NameChar {NameChar}
  947.           NameChar          = "a"-"z" | "A"-"Z" | "0"-"9" | "_" | "-"
  948.           Value             = {<any character except null or unescaped newline>}
  949.  
  950.           Elements separated by vertical bar (|) are alternatives.
  951.           Curly braces ({...}) indicate zero or more repetitions of
  952.           the enclosed elements.  Square brackets ([...]) indicate
  953.           that the enclosed element is optional.  Quotes ("...") are
  954.           used around literal characters.
  955.  
  956.           IncludeFile lines are interpreted by replacing the line with
  957.           the contents of the specified file.  The word "include" must
  958.           be in lowercase.  The filename is interpreted relative to
  959.           the directory of the file in which the line occurs (for
  960.           example, if the filename contains no directory or contains a
  961.           relative directory specification).
  962.  
  963.           If a ResourceName contains a contiguous sequence of two or
  964.           more Binding characters, the sequence will be replaced with
  965.           single "." character if the sequence contains only "."
  966.           characters, otherwise the sequence will be replaced with a
  967.           single "*" character.
  968.  
  969.           A resource database never contains more than one entry for a
  970.           given ResourceName.  If a resource file contains multiple
  971.           lines with the same ResourceName, the last line in the file
  972.           is used.
  973.  
  974.           Any whitespace character before or after the name or colon
  975.           in a ResourceSpec are ignored.  To allow a Value to begin
  976.           with whitespace, the two-character sequence ``\_s_p_a_c_e''
  977.           (backslash followed by space) is recognized and replaced by
  978.           a space character, and the two-character sequence ``\_t_a_b''
  979.           (backslash followed by horizontal tab) is recognized and
  980.           replaced by a horizontal tab character.  To allow a Value to
  981.           contain embedded newline characters, the two-character
  982.           sequence ``\n'' is recognized and replaced by a newline
  983.           character.  To allow a Value to be broken across multiple
  984.  
  985.  
  986.  
  987.      Page 15                                         (printed 10/3/02)
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  995.  
  996.  
  997.  
  998.           lines in a text file, the two-character sequence
  999.           ``\_n_e_w_l_i_n_e'' (backslash followed by newline) is recognized
  1000.           and removed from the value.  To allow a Value to contain
  1001.           arbitrary character codes, the four-character sequence
  1002.           ``\_n_n_n'', where each _n is a digit character in the range of
  1003.           ``0''-``7'', is recognized and replaced with a single byte
  1004.           that contains the octal value specified by the sequence.
  1005.           Finally, the two-character sequence ``\\'' is recognized and
  1006.           replaced with a single backslash.
  1007.  
  1008.           When an application looks for the value of a resource, it
  1009.           specifies a complete path in the hierarchy, with both class
  1010.           and instance names.  However, resource values are usually
  1011.           given with only partially specified names and classes, using
  1012.           pattern matching constructs.  An asterisk (*) is a loose
  1013.           binding and is used to represent any number of intervening
  1014.           components, including none.  A period (.) is a tight binding
  1015.           and is used to separate immediately adjacent components.  A
  1016.           question mark (?) is used to match any single component name
  1017.           or class.  A database entry cannot end in a loose binding;
  1018.           the final component (which cannot be "?") must be specified.
  1019.           The lookup algorithm searches the resource database for the
  1020.           entry that most closely matches (is most specific for) the
  1021.           full name and class being queried.  When more than one
  1022.           database entry matches the full name and class, precedence
  1023.           rules are used to select just one.
  1024.  
  1025.           The full name and class are scanned from left to right (from
  1026.           highest level in the hierarchy to lowest), one component at
  1027.           a time.  At each level, the corresponding component and/or
  1028.           binding of each matching entry is determined, and these
  1029.           matching components and bindings are compared according to
  1030.           precedence rules.  Each of the rules is applied at each
  1031.           level, before moving to the next level, until a rule selects
  1032.           a single entry over all others.  The rules (in order of
  1033.           precedence) are:
  1034.  
  1035.           1.   An entry that contains a matching component (whether
  1036.                name, class, or "?")  takes precedence over entries
  1037.                that elide the level (that is, entries that match the
  1038.                level in a loose binding).
  1039.  
  1040.           2.   An entry with a matching name takes precedence over
  1041.                both entries with a matching class and entries that
  1042.                match using "?".  An entry with a matching class takes
  1043.                precedence over entries that match using "?".
  1044.  
  1045.           3.   An entry preceded by a tight binding takes precedence
  1046.                over entries preceded by a loose binding.
  1047.  
  1048.           Programs based on the X Tookit Intrinsics obtain resources
  1049.           from the following sources (other programs usually support
  1050.  
  1051.  
  1052.  
  1053.      Page 16                                         (printed 10/3/02)
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  1061.  
  1062.  
  1063.  
  1064.           some subset of these sources):
  1065.  
  1066.           RRRREEEESSSSOOOOUUUURRRRCCCCEEEE____MMMMAAAANNNNAAAAGGGGEEEERRRR rrrrooooooootttt wwwwiiiinnnnddddoooowwww pppprrrrooooppppeeeerrrrttttyyyy
  1067.                   Any global resources that should be available to
  1068.                   clients on all machines should be stored in the
  1069.                   RESOURCE_MANAGER property on the root window of the
  1070.                   first screen using the _x_r_d_b program.  This is
  1071.                   frequently taken care of when the user starts up X
  1072.                   through the display manager or _x_i_n_i_t.
  1073.  
  1074.           SSSSCCCCRRRREEEEEEEENNNN____RRRREEEESSSSOOOOUUUURRRRCCCCEEEESSSS rrrrooooooootttt wwwwiiiinnnnddddoooowwww pppprrrrooooppppeeeerrrrttttyyyy
  1075.                   Any resources specific to a given screen (e.g.
  1076.                   colors) that should be available to clients on all
  1077.                   machines should be stored in the SCREEN_RESOURCES
  1078.                   property on the root window of that screen.  The
  1079.                   _x_r_d_b program will sort resources automatically and
  1080.                   place them in RESOURCE_MANAGER or SCREEN_RESOURCES,
  1081.                   as appropriate.
  1082.  
  1083.           aaaapppppppplllliiiiccccaaaattttiiiioooonnnn----ssssppppeeeecccciiiiffffiiiicccc ffffiiiilllleeeessss
  1084.                   Directories named by the environment variable
  1085.                   XUSERFILESEARCHPATH or the environment variable
  1086.                   XAPPLRESDIR (which names a single directory and
  1087.                   should end with a '/' on POSIX systems), plus
  1088.                   directories in a standard place (usually under
  1089.                   <XRoot>/lib/X11/, but this can be overridden with
  1090.                   the XFILESEARCHPATH environment variable) are
  1091.                   searched for for application-specific resources.
  1092.                   For example, application default resources are
  1093.                   usually kept in <XRoot>/lib/X11/app-defaults/.  See
  1094.                   the _X _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s - _C _L_a_n_g_u_a_g_e _I_n_t_e_r_f_a_c_e
  1095.                   manual for details.
  1096.  
  1097.           XXXXEEEENNNNVVVVIIIIRRRROOOONNNNMMMMEEEENNNNTTTT
  1098.                   Any user- and machine-specific resources may be
  1099.                   specified by setting the XENVIRONMENT environment
  1100.                   variable to the name of a resource file to be loaded
  1101.                   by all applications.  If this variable is not
  1102.                   defined, a file named $_H_O_M_E/.Xdefaults-_h_o_s_t_n_a_m_e is
  1103.                   looked for instead, where _h_o_s_t_n_a_m_e is the name of
  1104.                   the host where the application is executing.
  1105.  
  1106.           ----xxxxrrrrmmmm _r_e_s_o_u_r_c_e_s_t_r_i_n_g
  1107.                   Resources can also be specified from the command
  1108.                   line.  The _r_e_s_o_u_r_c_e_s_t_r_i_n_g is a single resource name
  1109.                   and value as shown above.  Note that if the string
  1110.                   contains characters interpreted by the shell (e.g.,
  1111.                   asterisk), they must be quoted.  Any number of ----xxxxrrrrmmmm
  1112.                   arguments may be given on the command line.
  1113.  
  1114.           Program resources are organized into groups called _c_l_a_s_s_e_s,
  1115.           so that collections of individual resources (each of which
  1116.  
  1117.  
  1118.  
  1119.      Page 17                                         (printed 10/3/02)
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  1127.  
  1128.  
  1129.  
  1130.           are called _i_n_s_t_a_n_c_e_s) can be set all at once.  By
  1131.           convention, the instance name of a resource begins with a
  1132.           lowercase letter and class name with an upper case letter.
  1133.           Multiple word resources are concatenated with the first
  1134.           letter of the succeeding words capitalized.  Applications
  1135.           written with the X Toolkit Intrinsics will have at least the
  1136.           following resources:
  1137.  
  1138.           bbbbaaaacccckkkkggggrrrroooouuuunnnndddd ((((class BBBBaaaacccckkkkggggrrrroooouuuunnnndddd))))
  1139.                   This resource specifies the color to use for the
  1140.                   window background.
  1141.  
  1142.           bbbboooorrrrddddeeeerrrrWWWWiiiiddddtttthhhh ((((class BBBBoooorrrrddddeeeerrrrWWWWiiiiddddtttthhhh))))
  1143.                   This resource specifies the width in pixels of the
  1144.                   window border.
  1145.  
  1146.           bbbboooorrrrddddeeeerrrrCCCCoooolllloooorrrr ((((class BBBBoooorrrrddddeeeerrrrCCCCoooolllloooorrrr))))
  1147.                   This resource specifies the color to use for the
  1148.                   window border.
  1149.  
  1150.           Most applications using the X Toolkit Intrinsics also have
  1151.           the resource ffffoooorrrreeeeggggrrrroooouuuunnnndddd (class FFFFoooorrrreeeeggggrrrroooouuuunnnndddd), specifying the
  1152.           color to use for text and graphics within the window.
  1153.  
  1154.           By combining class and instance specifications, application
  1155.           preferences can be set quickly and easily.  Users of color
  1156.           displays will frequently want to set Background and
  1157.           Foreground classes to particular defaults.  Specific color
  1158.           instances such as text cursors can then be overridden
  1159.           without having to define all of the related resources.  For
  1160.           example,
  1161.  
  1162.               bitmap*Dashed:  off
  1163.               XTerm*cursorColor:  gold
  1164.               XTerm*multiScroll:  on
  1165.               XTerm*jumpScroll:  on
  1166.               XTerm*reverseWrap:  on
  1167.               XTerm*curses:  on
  1168.               XTerm*Font:  6x10
  1169.               XTerm*scrollBar: on
  1170.               XTerm*scrollbar*thickness: 5
  1171.               XTerm*multiClickTime: 500
  1172.               XTerm*charClass:  33:48,37:48,45-47:48,64:48
  1173.               XTerm*cutNewline: off
  1174.               XTerm*cutToBeginningOfLine: off
  1175.               XTerm*titeInhibit:  on
  1176.               XTerm*ttyModes:  intr ^c erase ^? kill ^u
  1177.               XLoad*Background: gold
  1178.               XLoad*Foreground: red
  1179.               XLoad*highlight: black
  1180.               XLoad*borderWidth: 0
  1181.               emacs*Geometry:  80x65-0-0
  1182.  
  1183.  
  1184.  
  1185.      Page 18                                         (printed 10/3/02)
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  1193.  
  1194.  
  1195.  
  1196.               emacs*Background:  rgb:5b/76/86
  1197.               emacs*Foreground:  white
  1198.               emacs*Cursor:  white
  1199.               emacs*BorderColor:  white
  1200.               emacs*Font:  6x10
  1201.               xmag*geometry: -0-0
  1202.               xmag*borderColor:  white
  1203.  
  1204.           If these resources were stored in a file called ._X_r_e_s_o_u_r_c_e_s
  1205.           in your home directory, they could be added to any existing
  1206.           resources in the server with the following command:
  1207.  
  1208.               % xrdb -merge $HOME/.Xresources
  1209.  
  1210.           This is frequently how user-friendly startup scripts merge
  1211.           user-specific defaults into any site-wide defaults.  All
  1212.           sites are encouraged to set up convenient ways of
  1213.           automatically loading resources. See the _X_l_i_b manual section
  1214.           _R_e_s_o_u_r_c_e _M_a_n_a_g_e_r _F_u_n_c_t_i_o_n_s for more information.
  1215.  
  1216.      EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS
  1217.           The following is a collection of sample command lines for
  1218.           some of the more frequently used commands.  For more
  1219.           information on a particular command, please refer to that
  1220.           command's manual page.
  1221.  
  1222.               %  xrdb $HOME/.Xresources
  1223.               %  xmodmap -e "keysym BackSpace = Delete"
  1224.               %  mkfontdir /usr/local/lib/X11/otherfonts
  1225.               %  xset fp+ /usr/local/lib/X11/otherfonts
  1226.               %  xmodmap $HOME/.keymap.km
  1227.               %  xsetroot -solid 'rgbi:.8/.8/.8'
  1228.               %  xset b 100 400 c 50 s 1800 r on
  1229.               %  xset q
  1230.               %  twm
  1231.               %  xmag
  1232.               %  xclock -geometry 48x48-0+0 -bg blue -fg white
  1233.               %  xeyes -geometry 48x48-48+0
  1234.               %  xbiff -update 20
  1235.               %  xlsfonts '*helvetica*'
  1236.               %  xwininfo -root
  1237.               %  xdpyinfo -display joesworkstation:0
  1238.               %  xhost -joesworkstation
  1239.               %  xrefresh
  1240.               %  xwd | xwud
  1241.               %  bitmap companylogo.bm 32x32
  1242.               %  xcalc -bg blue -fg magenta
  1243.               %  xterm -geometry 80x66-0-0 -name myxterm $*
  1244.               %  xon filesysmachine xload
  1245.  
  1246.      DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
  1247.           A wide variety of error messages are generated from various
  1248.  
  1249.  
  1250.  
  1251.      Page 19                                         (printed 10/3/02)
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  1259.  
  1260.  
  1261.  
  1262.           programs.  The default error handler in _X_l_i_b (also used by
  1263.           many toolkits) uses standard resources to construct
  1264.           diagnostic messages when errors occur.  The defaults for
  1265.           these messages are usually stored in
  1266.           <_X_R_o_o_t>/_l_i_b/_X_1_1/_X_E_r_r_o_r_D_B.  If this file is not present,
  1267.           error messages will be rather terse and cryptic.
  1268.  
  1269.           When the X Toolkit Intrinsics encounter errors converting
  1270.           resource strings to the appropriate internal format, no
  1271.           error messages are usually printed.  This is convenient when
  1272.           it is desirable to have one set of resources across a
  1273.           variety of displays (e.g. color vs. monochrome, lots of
  1274.           fonts vs. very few, etc.), although it can pose problems for
  1275.           trying to determine why an application might be failing.
  1276.           This behavior can be overridden by the setting the
  1277.           _S_t_r_i_n_g_C_o_n_v_e_r_s_i_o_n_s_W_a_r_n_i_n_g resource.
  1278.  
  1279.           To force the X Toolkit Intrinsics to always print string
  1280.           conversion error messages, the following resource should be
  1281.           placed in the file that gets loaded onto the
  1282.           RESOURCE_MANAGER property using the _x_r_d_b program (frequently
  1283.           called ._X_r_e_s_o_u_r_c_e_s or ._X_r_e_s in the user's home directory):
  1284.  
  1285.               *StringConversionWarnings: on
  1286.  
  1287.           To have conversion messages printed for just a particular
  1288.           application, the appropriate instance name can be placed
  1289.           before the asterisk:
  1290.  
  1291.               xterm*StringConversionWarnings: on
  1292.  
  1293.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  1294.           XProjectTeam(1), XStandards(1), Xsecurity(1),
  1295.  
  1296.           appres(1), bdftopcf(1), bitmap(1), editres(1), fsinfo(1),
  1297.           fslsfonts(1), fstobdf(1), iceauth(1), imake(1), lbxproxy(1),
  1298.           makedepend(1), mkfontdir(1), oclock(1), proxymngr(1),
  1299.           rgb(1), resize(1), rstart(1), smproxy(1), twm(1),
  1300.           x11perf(1), x11perfcomp(1), xauth(1), xclipboard(1),
  1301.           xclock(1), xcmsdb(1), xconsole(1), xdm(1), xdpyinfo(1),
  1302.           xfd(1), xfindproxy(1), xfs(1), xfwp(1), xhost(1),
  1303.           xieperf(1), xinit(1), xkbbell(1), xkbcomp(1), xbkevd(1),
  1304.           xkbprint(1), xkbvleds(1), xkbwatch(1), xkill(1), xlogo(1),
  1305.           xlsatoms(1), xlsclients(1), xlsfonts(1), xmag(1), xmh(1),
  1306.           xmodmap(1), xon(1), xprop(1), xrdb(1), xrefresh(1), xrx(1),
  1307.           xset(1), xsetroot(1), xsm(1), xstdcmap(1), xterm(1), xwd(1),
  1308.           xwininfo(1), xwud(1).  Xserver(1), Xdec(1), XmacII(1),
  1309.           Xsun(1), Xnest(1), Xvfb(1), XF86_Acc(1), XF86_Mono(1),
  1310.           XF86_SVGA(1), XF86_VGA16(1), XFree86(1), kbd_mode(1), _X_l_i_b -
  1311.           _C _L_a_n_g_u_a_g_e _X _I_n_t_e_r_f_a_c_e, and _X _T_o_o_l_k_i_t _I_n_t_r_i_n_s_i_c_s - _C
  1312.           _L_a_n_g_u_a_g_e _I_n_t_e_r_f_a_c_e
  1313.  
  1314.  
  1315.  
  1316.  
  1317.      Page 20                                         (printed 10/3/02)
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.      XXXX((((1111))))               XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((RRRReeeelllleeeeaaaasssseeee 6666....4444))))                XXXX((((1111))))
  1325.  
  1326.  
  1327.  
  1328.      TTTTRRRRAAAADDDDEEEEMMMMAAAARRRRKKKKSSSS
  1329.           X Window System is a trademark of The Open Group.
  1330.  
  1331.      AAAAUUUUTTTTHHHHOOOORRRRSSSS
  1332.           A cast of thousands, literally.  The Release 6.4
  1333.           distribution is brought to you by The Open Group X Project
  1334.           Team.  The names of all people who made it a reality will be
  1335.           found in the individual documents and source files.  The The
  1336.           X Project Team staff members responsible for this release
  1337.           are: Arthur Barstow, Kaleb Keithley, Sekhar Makkapati, M. S.
  1338.           Ramesh, Jingping Ge, Ken Flowers, and Dave Knorr.
  1339.  
  1340.           The X Window System standard was originally developed at the
  1341.           Laboratory for Computer Science at the Massachusetts
  1342.           Institute of Technology, and all rights thereto were
  1343.           assigned to the X Consortium on January 1, 1994.  X
  1344.           Consortium, Inc. closed its doors on December 31, 1996.  All
  1345.           rights to the X Window System have been assigned to The Open
  1346.           Group.
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365.  
  1366.  
  1367.  
  1368.  
  1369.  
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.      Page 21                                         (printed 10/3/02)
  1384.  
  1385.  
  1386.  
  1387.